from appium import webdriver
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC

class Base():
    # 创建链接
    def __init__(self):
        cap={
            "platformName": "Android",
            "appium:deviceName": "emulator-5554",
            "appium:automationName": "uiautomator2",
            "appium:appPackage": "com.xiachufang",
            "appium:appActivity": ".activity.home.HomeActivity",
            "appium:noReset": True
        }
        # 链接模拟器
        self.driver=webdriver.Remote('http://127.0.0.1:4723/wd/hub',cap)
        # 隐式构建
        self.driver.implicitly_wait(20)

    # 找元素
    def find_ele(self,loc):
        ele = self.driver.find_element(*loc)
        return ele
    # 显示等待
    def find_ele_webD(self,loc):
        ele = WebDriverWait(self.driver,200).until(EC.element_to_be_clickable(loc))
    # 轻敲
    def find_tap(self,x,y):
        self.driver.tap([(x,y),],300)
    # 滑动
    def find_swipe(self,a,b,c,d):
        self.driver.swipe(a,b,c,d,300)
    # 退出
    def find_quit(self):
        self.driver.quit()
    # 返回上一及
    def find_back(self):
        self.driver.back()